package com.etiya.bean;

import java.io.Serializable;
import java.util.ArrayList;
import java.util.List;

import javax.persistence.EntityManager;

import com.etiya.baglanti.EntityUtil;
import com.etiya.entity.KitapTurBilgileri;

public class KitapTuruBean implements Serializable {

	/**
	 * 
	 */
	private static final long serialVersionUID = 7058294739609474094L;

	public KitapTuruBean() {
		turListesi();
	}

	private List<KitapTurBilgileri> kitapTurListesi = new ArrayList<KitapTurBilgileri>();

	private KitapTurBilgileri turBilgileri = new KitapTurBilgileri();
	
	public void setTurBilgileri(KitapTurBilgileri turBilgileri) {
		this.turBilgileri = turBilgileri;
	}

	public KitapTurBilgileri getTurBilgileri() {
		return turBilgileri;
	}

	public void setKitapTurListesi(List<KitapTurBilgileri> kitapTurListesi) {
		this.kitapTurListesi = kitapTurListesi;
	}

	public List<KitapTurBilgileri> getKitapTurListesi() {
		return kitapTurListesi;
	}

	public String kaydet() {

		EntityManager em = EntityUtil.getEntityManager();

		try {
			if (!em.getTransaction().isActive()) {

				em.getTransaction().begin();

				em.persist(turBilgileri);

				em.getTransaction().commit();
				
				turBilgileri = new KitapTurBilgileri();

				turListesi();
			}
		} catch (Exception e) {
			em.flush();
			// e.printStackTrace();
		}
		return null;

	}

	public String sil() {

		EntityManager em = EntityUtil.getEntityManager();

		try {
			if (!em.getTransaction().isActive()) {

				em.getTransaction().begin();

				em.remove(turBilgileri);

				em.getTransaction().commit();
				
				turBilgileri = new KitapTurBilgileri();
				
				turListesi();
			}

		} catch (Exception e) {
             
			em.flush();
		}

		return null;
	}

	public String duzenle() {

		EntityManager em = EntityUtil.getEntityManager();

		try {
			if (!em.getTransaction().isActive()) {

				em.getTransaction().begin();

				em.merge(turBilgileri);

				em.getTransaction().commit();
				
				turBilgileri = new KitapTurBilgileri();
				
				
				turListesi();
			}
		} catch (Exception e) {

			em.flush();
		}

		return null;
	}

	@SuppressWarnings("unchecked")
	private void turListesi() {

		EntityManager em = EntityUtil.getEntityManager();

		setKitapTurListesi(em.createQuery("from KitapTurBilgileri")
				.getResultList());

	}

}
